The Theory of Objects was born from the conception of object-oriented programming but its use expanded from computers to business analysis in general thereby giving birth to Object-Oriented Business Analysis.
This article aims at giving an overview and a quick jumpstart at the theory of objects in both contexts.
An Object can be anything elementary or itself composed of objects. In example a car is made of a steer wheel, an engine, wheels which are all objects in themselves.
If it is composed of objects it has Relations that are internal with its inner objects and external with its related outer objects. Note that an object can be anything and even anybody including a human being.
A Class is the mold that defines an object just like a cookie cutter defines the shape of a cookie.
The Instantiation or to Instantiate refers to the process through which a class defines the birth and then the existence of an object called Instance. To continue our cookie example it is the process through which the application of the pasta on cookie cutter defines the birth and then the existence of a cookie.
A Relation is the link between two objects. Note that even a relation can be an object itself.
Every object has Attributes such as its color(s) and shape(s).
Every object also has Properties such as the material it is composed of. Properties are similar to attributes but differentiate because they also can be used to enter a parameter into an object or to return a parameter from an object.
A Parameter is a variable or a constant value and in some instances, can also reference an object or a relation.
Every object can feature Events that are reactions from the object to a particular list of conditions or to a Method.
An object can implement Methods that are ways to give instructions to this object.
As an example, the object car implements the method Start the Engine that enables to activate the engine of the car.
The Encapsulation is the provision of an interface for a piece of software or hardware to allow or simplify access for the user.
The encapsulation refers to the bundling of data with the methods that operate on that data. Encapsulation is used to hide the values or state of a structured data object inside a class, preventing unauthorized parties' direct access to them. Publicly accessible methods are generally provided in the class, so-called Getters and Setters to access the values, and other client classes call these methods to retrieve and modify the values within the object.
The Inheritance is a special type of relationship between classes. A class inherits all characteristics of another class and adds and/or removes one or more characteristics. In example the coupé version of a car inherits the characteristics of the limousine version except for the rear of the car that is shorter.
Polymorphism is the provision of a single interface to objects of different types or of several interface to a single object.
Furthermore, the advantage is that it is very easy to develop a software from an object-oriented business analysis.